# name = '小明'
# age = 10
#
# print('我叫%s，今年%d岁。' % (name, age))
import string

# name = '小明'
# age = 25
# string = '我叫{}，今年{}岁。'
# print(string.format(name, age))

# name = '小明'
# age = 25
# string = '我叫{1}，今年{0}岁。'
# print(string.format(age, name))

# name1 = '小明'
# age1 = 25
# string = '我叫{name}，今年{age}岁。'
# # print(string.format(name=name1, age=age1))
# print(f'{age1:.2f}')
# name = 'ethan'
# position = 'employee'
# phone_num = 123
# e_mail = '123@126.com'
#
# print("===============================")
# print(f'姓名：{name}\n职位：{position}\n电话号码：{phone_num}\n邮箱：{e_mail}')
# print("===============================")

# string_example = 'The more efforts you make, the more fortune you get.'
# # 以空格作为分隔符
# print(string_example.split())
# # 以字母m作为分隔符
# print(string_example.split('m'))
# # 以字母e作为分割符，并分割2次
# print(string_example.split('e', 2))

# start = 'Py'
# end = 'thon'
# print(start + end)

# 日期一般有多种表现形式，比如2022年2月4日、2022-2-4、2022/2/4、2022.2.4。本任务要求编写代码，将各种表现形式的日期均转换为“X年X月X日”的日期格式。
# dates = ['2022年2月4日', '2022-2-4', '2022/2/4', '2022.2.4']
# date1 = dates[1].split('-')
# print(date1[0] + '年' + date1[1] + '月' + date1[2] + '日')
# date1 = dates[2].split('/')
# print(date1[0] + '年' + date1[1] + '月' + date1[2] + '日')
# date1 = dates[3].split('.')
# print(date1[0] + '年' + date1[1] + '月' + date1[2] + '日')

# separator = ['-', '/', '.']
# for e in dates:
#     for s in separator:
#         if separator in dates:
#             parts = e.split(s)

# str1 = 'python'
# print(str1[0: 6: 1])

# string = 'He said, "you have to go forward, Then turn left, Then go forward, and Then turn right."'
# new_string = string.replace('Then', 'then', 2)
# print(new_string)

# words = ['''我们拥有多年的品牌战略规划及标志设计、商标注册经验；专业提供公司标志设计与商标注册一条龙服务。我们拥有最优秀
# 且具有远见卓识的设计师，使我们的策略分析严谨，设计充满创意。我们有信心为您缔造最优秀的品牌形象设计服务，将
# 您的企业包装得更富价值。''', '最优秀', '较优秀']
# sensitive = words[0].find(words[1])
# if sensitive != -1:
#     words[0] = words[0].replace(words[1], words[2])
#     print(words[0])
# else:
#     print('没有敏感词')

# 原始文本
# text = """
# 我们拥有多年的品牌战略规划及标志设计、商标注册经验；专业提供公司标志设计与商标注册一条龙服务。
# 我们拥有最优秀且具有远见卓识的设计师，使我们的策略分析严谨，设计充满创意。
# 我们有信心为您缔造最优秀的品牌形象设计服务，将您的企业包装得更富价值。
# """
#
# # 不良词语及其替换词
# bad_word = "最优秀"
# replacement_word = "较优秀"
#
# # 替换不良词语
# filtered_text = text.replace(bad_word, replacement_word)
#
# # 输出过滤后的文本
# print(filtered_text)

# sentence = 'hello world'
# center_str = sentence.center(13,'-')  	# 长度为13，居中显示，使用-补齐
# ljust_str = sentence.ljust(13, '*')   	# 长度为13，左对齐，使用*补齐
# rjust_st = sentence.rjust(13, '%')    	# 长度为13，右对齐，使用%补齐
# print(f'居中显示：{center_str}')
# print(f'左对齐显示：{ljust_str}')
# print(f'右对齐显示：{rjust_st}')

# title = input('标题')
# dynasty = input('朝代')
# author = input('作者')
# print('请输入古诗的每一行，没有更多的诗句时，输入end结束输入')
# lines = []
# while 1:
#     line = input()
#     if line.lower() == 'end':
#         break
#     lines.append(line)
#
# print('\n' + '='*40)
# print(title.center(20))
# print(f'[{dynasty}]{author}'.center(20))
# for line in lines:
#     print(line.center(20))
# print('\n' + '='*40)

password = input("请输入密码：")
password_strenths = {
    "弱" : {'score': 1, 'requirements': {"包含数字、大写字母、小写字母或符号中的一种或字符长度小于8"}},
    "中": {'score': 2, 'requirements': {"同时包含数字、大写字母、小写字母或符号中的两种且字符长度不小于8"}},
    "强": {'score': 3, 'requirements': {"同时包含数字、大写字母、小写字母或符号中的三种且字符长度不小于8"}},
    "极强": {'score': 4, 'requirements': {"同时包含数字、大写字母、小写字母和符号且字符长度不小于8"}}
}
has_digit = any(char.isdigit() for char in password)
has_uppercase = any(char.isupper() for char in password)
has_lowercase = any(char.islower() for char in password)
has_special_char = any(char in string.punctuation for char in password)
length = len(password)
stength = has_digit + has_uppercase + has_lowercase + has_special_char
print(stength)




